package com.tanhua.server.service;

import com.alibaba.dubbo.config.annotation.Reference;
import com.tanhua.dubbo.server.api.UserLogApi;
import com.tanhua.dubbo.server.pojo.UserLog;
import com.tanhua.server.vo.LoginLogsVo;
import com.tanhua.server.vo.PageResult;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Service
public class LoginLogsService {

    @Reference(version = "1.0.0")
    private UserLogApi userLogApi;



    public PageResult queryLoginLogs(Integer page, Integer pagesize, Integer uid, String sortProp, String sortOrder) {
        PageResult pageResult = new PageResult();
        pageResult.setPage(page);
        pageResult.setPagesize(pagesize);
        //获取用户基本信息 todo

        Map<String, Object> map = userLogApi.queryUserLogs(uid, page, pagesize, sortProp, sortOrder);
        //总条数
        pageResult.setCounts((int)map.get("count"));
        //总页数
        Integer count = Integer.valueOf((int) map.get("count"));
        int pages =  (int)Math.ceil(count.doubleValue()/ pagesize.doubleValue());
        pageResult.setPages(pages);
        List<UserLog> userLogList = (List<UserLog>) map.get("userLogList");
        List<LoginLogsVo> loginLogsVoList = new ArrayList<>();
        for (UserLog userLog : userLogList) {
            LoginLogsVo loginLogsVo = new LoginLogsVo();
            loginLogsVo.setId(uid);
            loginLogsVo.setLogTime(userLog.getLoginDate().intValue());
            loginLogsVoList.add(loginLogsVo);
        }

        pageResult.setItems(loginLogsVoList);

        return pageResult;

    }
}

